<template>
  <div>
    <p>请选择你要购买的书籍</p>
    <ul>
      <li v-for="(ele,i) in arr" :key="i">
        <span>{{ele.name}}</span>
        <button @click.prevent="ppt(i)">买书</button>
      </li>
    </ul>
    <table border="1" width="500" cellspacing="0">
      <tr>
        <th>序号</th>
        <th>书名</th>
        <th>单价</th>
        <th>数量</th>
        <th>合计</th>
      </tr>
      <tr v-for="(ele,i) in arr" :key="i">
        <td>{{i+1}}</td>
        <td>{{ele.name}}</td>
        <td>{{ele.price}}</td>
        <td>{{ele.count}}</td>
        <td>{{ele.price*ele.count}}</td>
        <!-- <td>{{ index + 1 }}</td>
        <td>{{ item["name"] }}</td>
        <td>{{ item["price"] }}</td>
        <td>{{ item["count"] }}</td>
        <td>{{ item["price"] * item["count"] }}</td> -->
      </tr>
    </table>
    <p>总价格为：{{num}}</p>
  </div>
</template>

<script>
// import { log } from 'console';

export default {
  data() {
    return {
      arr: [
        {
          name: "水浒传",
          price: 107,
          count: 0,
        },
        {
          name: "西游记",
          price: 192,
          count: 0,
        },
        {
          name: "三国演义",
          price: 219,
          count: 0,
        },
        {
          name: "红楼梦",
          price: 178,
          count: 0,
        },
      ],
    };
  },
  methods: {
    ppt(i){
      this.arr[i].count++
      console.log(this.arr[i].count)
    }
    // buy(index) {
    //   this.arr[index]["count"]++;
    // },
  },
  computed: {
    num(){
      return this.arr.reduce((sum,ele)=>sum+=ele.price*ele.count,0)
    }
    // allPrice() {
    //   // 数组里放的是对象, 而对象是复杂类型, 引用关系, 值改变会触发计算属性重新执行
    //   return this.arr.reduce((sum, obj) => {
    //     return (sum += obj["price"] * obj["count"]);
    //   }, 0);
    // },
  },
};
</script>

<style>
</style>